package cn.yj.wx.pay.enrity;

import java.util.StringJoiner;

/**
 * 支付结果通知接收参数要解密的参数对象
 * @author 永健
 * @since 2021-09-23 13:53
 */
public class NoticeBodyResource {

    /**
     * 加密算法类型
     * 目前只支持AEAD_AES_256_GCM
     */
    private String algorithm;

    /**
     * 数据密文
     */
    private String ciphertext;

    private String associated_data;

    /**
     * 原始类型
     */
    private String original_type;

    /**
     * 随机串
     */
    private String nonce;

    public String getAlgorithm() {
        return algorithm;
    }

    public NoticeBodyResource setAlgorithm(String algorithm) {
        this.algorithm = algorithm;
        return this;
    }

    public String getCiphertext() {
        return ciphertext;
    }

    public NoticeBodyResource setCiphertext(String ciphertext) {
        this.ciphertext = ciphertext;
        return this;
    }

    public String getAssociated_data() {
        return associated_data;
    }

    public NoticeBodyResource setAssociated_data(String associated_data) {
        this.associated_data = associated_data;
        return this;
    }

    public String getOriginal_type() {
        return original_type;
    }

    public NoticeBodyResource setOriginal_type(String original_type) {
        this.original_type = original_type;
        return this;
    }

    public String getNonce() {
        return nonce;
    }

    public NoticeBodyResource setNonce(String nonce) {
        this.nonce = nonce;
        return this;
    }

    @Override
    public String toString() {
        return new StringJoiner(", ", NoticeBodyResource.class.getSimpleName() + "[", "]").add("algorithm='" + algorithm + "'").add("ciphertext='" + ciphertext + "'").add("associated_data='" + associated_data + "'").add("original_type='" + original_type + "'").add("nonce='" + nonce + "'").toString();
    }
}
